#ifndef __CK_ENUM_CHECK_ELEMENT_H__
#define __CK_ENUM_CHECK_ELEMENT_H__

#include "ckObject.h"
#include "zCore.h"
#include <vector>

namespace ck
{
	class CheckElement;

	class ZCORE_API EnumCheckElement : public ckObject
	{
	public:
		EnumCheckElement();
		virtual ~EnumCheckElement();

	public:
		void			Add(CheckElement* pElement);
		void			Reset();
		CheckElement*	Next();
	private:
		void	Cleanup();

	private:
		std::vector<CheckElement*>	m_elements;
		std::vector<CheckElement*>::iterator	m_iter;
	};
}

#endif //__CK_ENUM_CHECK_ELEMENT_H__
